﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using LM.InterfacesFabricas.DTOs;
using LM.InterfacesFabricas.Utilidades;
using LM.Negocio.Objetos;
using LM.Repositorios.Interfaces;

namespace LM.Repositorios.Conversores
{
    public class ConversorDeDependente
    {
        private ConversorDeCliente conversorDeCliente;

        public ConversorDeDependente()
        {
            conversorDeCliente = new ConversorDeCliente();
        }

        public Dependente Converta(DtoDependente dtoDependente)
        {
            var Dependente = new Dependente();

            Dependente.Codigo = dtoDependente.Codigo;
            Dependente.Cnh = dtoDependente.Cnh;
            Dependente.Cpf = dtoDependente.Cpf;
            Dependente.Nome = dtoDependente.Nome;
            Dependente.Cliente = conversorDeCliente.Converta(dtoDependente.Cliente);
            return Dependente;
        }

        public DtoDependente Converta(Dependente Dependente)
        {
            if (Dependente != null)
            {
                var dtoDependente = new DtoDependente();
                dtoDependente.Codigo = Dependente.Codigo;
                dtoDependente.Cnh = Dependente.Cnh;
                dtoDependente.Cpf = Dependente.Cpf;
                dtoDependente.Nome = Dependente.Nome;
                dtoDependente.Cliente = conversorDeCliente.Converta(Dependente.Cliente);
                
                return dtoDependente;
            }
            return null;
        }
    }
}
